// miniprogram/pages/scan/scan.js

const  app =  getApp();

Page({
    /**
     * 页面的初始数据
     */
    data: {
        type:'',
    },
    takePhoto() {
        wx.showToast({
            icon:'loading',
            title:'识别中'
        })
        //1.拍下一张照片
        this.getPhoto().then((path)=>{
            // console.log(path);
            //2,将照片转为base64
            return this.readFile(path)
        }).then((base64)=>{
            //3,提交到腾讯云
            // console.log(base64);
            return this.txApi(base64);
            
        }).then((result)=>{
            //4，判断结果
            let items = result.data.data.items;
            let hasYou = items.some((item)=>{
                return item.itemstring.indexOf('邮') > -1;
            })
            hasYou = true;
            /* 测试有没有邮，记得删掉 */

            let showType;
            if (hasYou) {
                
                wx.cloud.callFunction({
                    name: 'getYou',
                    success: (res) => {
                        console.log("成功调用getYou云函数", res);
                        console.log(res.result.success);
                        if (res.result.success==false){
                            wx.showToast({
                                title: res.result.msg,
                                icon: 'none',
                                duration: 1500
                            })
                        }else{
                            
                            wx.showToast({
                                title: '恭喜，有邮卡',
                                icon: 'success',
                                duration: 1500
                            })
                            setTimeout(()=>{
                                 wx.navigateTo({
                                    url: `../send/send?type=${res.result.type}`,
                                 }) 
                            },2000)
                        }
                        
                    },
                })
            } else {
                wx.showToast({
                    title: '请再试一遍',
                    icon: 'none',
                    duration: 2000,
                });
            }
        })
      },
      //1,拍照
      getPhoto(){
        return new Promise((reslove,reject)=>{
            const ctx = wx.createCameraContext()
            ctx.takePhoto({
            quality: 'high',
            success: (res) => {
                //返回图片的临时路径
                reslove(res.tempImagePath);
            },
            fail:()=>{
                reject(err)
                }
            })
        })
      },
      //2.转base64
      readFile(path){
          return new Promise((reslove,reject)=>{
              //获取文件系统管理对象
              const fs = wx.getFileSystemManager();
              fs.readFile({
                filePath:path,
                encoding:'base64',
                success:(res)=>{
                    reslove(res.data)
                },
                fail:(err)=>{
                    reject(err);
                }
              })
          })
      },
      //3,
      txApi(base64){
          console.log(111, app.globalData.sign)
          return new Promise((reslove,reject)=>{
              wx.request({
                  url:'https://recognition.image.myqcloud.com/ocr/general',
                  header:{
                    'host':'recognition.image.myqcloud.com',
                    'content-type':	'application/JSON',
                    'authorization':app.globalData.sign
                  },
                  data:{
                    appid	:	'1258450062',
                    image:base64
                  },
                  method:'POST',
                  success:(res)=>{
                    console.log('成功',res);
                    reslove(res);
                    
                  },
                  fail:(err)=>{
                    reject(err);
                  }

              })
          })
      },
    /**
     * 生命周期函数--监听页面加载
     */
    onLoad: function (options) {

    },

    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady: function () {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow: function () {

    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide: function () {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload: function () {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh: function () {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom: function () {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage: function () {

    }
})